home *** CD-ROM | disk | FTP | other *** search
Text File | 1994-03-24 | 28.2 KB | 780 lines | [TEXT/MPS ] |
- {
- FILENAME
- PrintingDrivers.p
-
- DESCRIPTION
- This file defines data types and API functions for
- printer driver development.
-
- COPYRIGHT
- Copyright © Apple Computer, Inc. 1989, 1990, 1991, 1992, 1993
- All rights reserved.
-
- }
- {$IFC UNDEFINED UsingIncludes}
- {$SETC UsingIncludes := 0}
- {$ENDC}
-
- {$IFC NOT UsingIncludes}
- UNIT PrintingDrivers;
- INTERFACE
- {$ENDC}
-
- {$IFC UNDEFINED UsingPrintingDrivers}
- {$SETC UsingPrintingDrivers := 1}
-
- {$I+}
- {$SETC PrintingDriversIncludes := UsingIncludes}
- {$SETC UsingIncludes := 1}
- {$IFC UNDEFINED UsingTypes}
- {$I $$Shell(PInterfaces)Types.p}
- {$ENDC}
- {$SETC UsingIncludes := PrintingDriversIncludes}
-
- { Constants }
-
-
- CONST
- gxInputTraysMenuItem = -1; { Menu item number for "Input Trays..." }
- gxUseCustomIO = $00000001; { driver uses a non-standard IO mechanism }
-
-
- { ----------------------------------• 'prod' •---------------------------------- }
-
- { for PostScript devices, the device and version names of the device.
- (0) product name is of type PString
- (1) version is of type PString
- (2) revision is of type PString
- (3) vm available is of type long }
-
- gxPostscriptProductInfoType 'prod'
- gxPostscriptProductNameID 0;
- gxPostscriptVersionID 1;
- gxPostscriptRevisionID 2;
- gxPostscriptVMAvailableID 3;
-
- gxAutoFeedButtonId = 3;
-
- gxUnivAlertStatusResourceId = -28508;
- gxUnivManualFeedIndex = 2;
- gxUnivFailToPrintIndex = 3;
- gxUnivPaperJamIndex = 4;
- gxUnivOutOfPaperIndex = 5;
- gxUnivNoPaperTrayIndex = 6;
- gxUnivPrinterReadyIndex = 7;
- gxUnivAlertBeforeIndex = 9;
- gxUnivAlertAfterIndex = 10;
-
- { allocation sizes for status buffers needed for automatic alerts }
- gxDefaultStatusBufferSize = 10;
- gxManualFeedStatusBufferSize = 34;
- gxOutOfPaperStatusBufferSize = 42;
-
- { constants for the "universal" print record... }
- gxPrintRecordVersion = 8;
- gxAutoFeed = 0;
- gxManualFeed = 1;
- gxPreciseBitmap = $0001;
- gxBiggerPages = $0002;
- gxGraphicSmoothing = $0004;
- gxTextSmoothing = $0008;
- gxFontSubstitution = $0010;
- gxInvertPage = $0020;
- gxFlipPageHoriz = $0040;
- gxFlipPageVert = $0080;
- gxColorMode = $0100;
- gxBidirectional = $0200;
- gxUserFlag0 = $0400;
- gxUserFlag1 = $0800;
- gxUserFlag2 = $1000;
- gxReservedFlag0 = $2000;
- gxReservedFlag1 = $4000;
- gxReservedFlag2 = $8000;
- gxPortraitOrientation = 0;
- gxLandscapeOrientation = 1;
- gxAltPortraitOrientation = 2;
- gxAltLandscapeOrientation = 3;
- gxBestQuality = 0;
- gxFasterQuality = 1;
- gxDraftQuality = 2;
- gxFirstTray = 0;
- gxSecondTray = 1;
- gxThirdTray = 2;
- gxNoCoverPage = 0;
- gxFirstPageCover = 1;
- gxLastPageCover = 2;
- gxUnidirectionalMotion = 0;
- gxBidirectionalMotion = 1;
- gxNoFile = 0;
- gxPostScriptFile = 1;
-
- { Raster Driver Contants }
- gxDefaultOffscreen = $00000000; { default value - bits are allocated for the client, halftoning takes place }
- gxDontSetHalftone = $00000001; { don't call SetViewPortHalftone }
- gxDotTypeIsDitherLevel = $00000002; { call SetViewPortDither using the dotType as the level }
- gxDefaultRaster = $00000000; { default raster options }
- gxDontResolveTransferModes = $00000001; { 0=Resolve, 1=Don't Resolve }
- gxRenderInReverse = $00000002; { traverse image in reverse order }
- gxOnePlaneAtATime = $00000004; { render each plane separately }
- gxSendAllBands = $00000008; { send even empty bands }
-
- gxSendAllColors = $00000001; { send even clean bands through }
- gxInterlaceColor = $00000002; { ribbon contamination is a concern }
- gxOverlayColor = $00000004; { color printer without a ribbon problem }
- gxUseColor = gxInterlaceColor+gxOverlayColor; { this is a color printer }
-
- { Vector Driver Contants }
- gxColorSort = $00000001; { set for pen plotters. }
- gxATransferMode = $00000002; { set if transfer modes need to be resolved }
- gxNoOverlap = $00000004; { set if non-overlapping output is desired }
- gxAColorBitmap = $00000008; { set if color bitmap output is desired }
- gxSortbyPenPos = $00000010; { set if shapes are to be drawn in the order of the pen index }
- { in the pen table. NOTE: this is not the pen position in the carousel. }
- gxPenLessPlotter = $00000020; { indicates raster printer/plotter }
- gxCutterPlotter = $00000040; { indicates cutter }
- gxNoBackGround = $00000080; { set if shapes that map to the background color should not be sent to driver }
- gxUnidirectionalFill = $00000001; { generate scanlines in one direction only.. useful for transparencies }
- gxAlsoOutlineFilledShape = $00000002; { turn on this bit to also outline solid filled shapes }
-
- { PostScript Driver Contants }
- gxPostSynonym = 'post';
-
- gxNeedsHexOption = $00000001; { convert all binary data to hex }
- gxNeedsCommentsOption = $00000002; { issue PostScript comments }
- gxBoundingBoxesOption = $00000004; { calculate the values for %%BoundingBox: and %%PageBoundingBox: -- requires needsCommentsOption }
- gxPortablePostScriptOption = $00000008; { generate portable PostScript }
- gxTextClipsToPathOption = $00000010; { convert all clips that are composed of text to path shapes }
- gxFlattenClipPathOption = $00000020; { convert all clips that are path shapes to polygons (helps better control point limit) }
- gxUseCharpath1Option = $00000040; { (ignored if text clips are converted to paths) When the clip is text, }
- { do it one glyph at a time, redrawing the main shape each time }
- gxUseLevel2ColorOption = $00000080; { When printing to level-2 use level-2 device independent color }
-
- gxPrinterOK = 0;
- gxIntializePrinter = 1;
- gxFilePrinting = 2;
- gxResetPrinter = 128;
-
- gxMissingImagePointer = -4; { for printer gxViewDevice bitmaps }
-
- TYPE
-
- {Printing Driver Types}
-
- gxIOPrefsRec = PACKED RECORD
- communicationsOptions: LongInt;
- numBuffers: LongInt;
- bufferSize: LongInt;
- numReqBlocks: LongInt;
- openCloseTimeout: LongInt;
- readWriteTimeout: LongInt;
- END;
- gxIOPrefsPtr = ^gxIOPrefsRec;
- gxIOPrefsHdl = ^gxIOPrefsPtr;
-
- gxPrintDestinationRec = PACKED RECORD
- printToFile: Boolean; { true if output is to go to a file }
- fSpec: FSSpec; { if going to a file, the FSSpec for the file }
- includeFonts: Byte; { true if fonts are to be included }
- fileFormat: Str31; { format to write file }
- END;
- gxPrintDestinationPtr = ^gxPrintDestinationRec;
- gxPrintDestinationHdl = ^gxPrintDestinationPtr;
-
-
- gxPortListRec = PACKED RECORD
- firstMarker: Byte;
- secondMarker: Byte; { markers to indicate icon or non-icon version }
- { if these are ≈ and ≈, then the cell is an icon cell. }
- { Otherwise, it is assumed to be a standard text LDEF }
- { cell }
-
- iconSuiteHandle: Handle; { the icon suite to draw for this cell }
- outputDriverName: Handle; { handle to the output driver name (for serial) }
- inputDriverName: Handle; { handle to the input driver name (for serial) }
- iconName: Str255; { name to draw under the icon }
- END;
- gxPortListPtr = ^gxPortListRec;
-
- gxManualFeedRecord = PACKED RECORD
- canAutoFeed: Boolean; { true if driver can switch to auto feed }
- paperTypeName: Str31; { name of paperType to feed manually }
- END;
-
- gxOutOfPaperRecord = PACKED RECORD
- paperTypeName: Str31;
- END;
-
- {Old Application Support}
-
- gxCustomizationRec = PACKED RECORD
- horizontalResolution: INTEGER;
- verticalResolution: INTEGER;
- upDriverType: INTEGER;
- patternStretch: Point;
- translatorSettings: INTEGER;
- END;
- gxCustomizationPtr = ^gxCustomizationRec;
- gxCustomizationHdl = ^gxCustomizationPtr;
-
- gxResolutionRec = PACKED RECORD
- rangeType: INTEGER;
- xMinimumResolution: INTEGER;
- xMaximumResolution: INTEGER;
- yMinimumResolution: INTEGER;
- yMaximumResolution: INTEGER;
- resolutionCount;
- resolutions: ARRAY [0..0] OF Point;
- END;
- gxResolutionPtr = ^gxResolutionRec;
- gxResolutionHdl = ^gxResolutionPtr;
-
- gxUniversalPrintRecord = PACKED RECORD
- prVersion: INTEGER; { print record version }
-
- { prInfo subrecord... }
-
- appDev: INTEGER; { device kind, always 0 }
- appVRes: INTEGER; { application vertical resolution }
- appHRes: INTEGER; { application horizontal resolution }
- appPage: Rect; { page size, in application resolution }
-
- appPaper: Rect; { paper rectangle [offset from rPage] }
-
- { prStl subrecord... }
-
- devType: INTEGER; { device type, always 0xA900 (was wDev) }
- pageV: INTEGER; { page height in 120ths of an inch }
- pageH: INTEGER; { page width in 120ths of an inch }
- fillByte: Byte; { page calculation mode }
- feed: Byte; { feed mode }
-
- { prInfoPT subrecord... }
-
- devKind: INTEGER; { device kind, always 0 }
- devVRes: INTEGER; { device vertical resolution }
- devHRes: INTEGER; { device horizontal resolution }
- devPage: Rect; { device page size }
-
- { prXInfo subrecord... }
-
- actualCopies: INTEGER; { actual number of copies for this job }
- options: INTEGER; { options for this device }
- reduction: INTEGER; { reduce/enlarge factor }
-
- orientation: Byte; { orientation of paper ( 0=portrait, 1=landscape ) }
-
- { clusters... }
-
- qualityMode: Byte; { quality mode }
- coverPage: Byte; { cover page }
- firstTray: Byte; { first feed tray }
- remainingTray: Byte; { remaining feed tray }
- headMotion: Byte; { head motion }
- saveFile: Byte; { save file }
-
- userCluster1: Byte; { three clusters left over... }
- userCluster2: Byte;
- userCluster3: Byte;
-
- { prJob subrecord... }
-
- firstPage: INTEGER; { first page }
- lastPage: INTEGER; { last page }
- copies: INTEGER; { # of copies, always 1 }
- reserved1: Byte; { always true, unused }
- reserved2: Byte; { always true, unused }
- pIdleProc: PrIdleProcPtr; { idle proc }
- pFileName: Ptr; { spool file name pointer }
- fileVol: INTEGER; { spool file vRefNum }
- fileVers: Byte; { file version, must be 0 }
- reserved3: Byte; { always 0 }
-
- printX[19]: ARRAY [0..18] OF INTEGER; { internal use }
- END;
- gxUniversalPrintRecordPtr = ^gxUniversalPrintRecord;
- gxUniversalPrintRecordHdl = ^gxUniversalPrintRecordPtr;
-
- {Raster Driver Types}
-
- gxPlaneSetupRec = PACKED RECORD
- planeOptions: gxRasterPlaneOptions; { options for the offscreen package }
- planeHalftone: gxHalftone; { OPTIONAL: halftone structure for this plane }
- planeSpace: gxColorSpace; { OPTIONAL: noSpace will get the graphics default }
- planeSet: gxColorSet; { OPTIONAL: NIL gets the default }
- planeProfile: gxColorProfile; { OPTIONAL: NIL gets no matching }
- END;
-
- gxOffscreenSetupRec = PACKED RECORD
- width: INTEGER; { Width in pixels }
- minHeight: INTEGER; { minimum height in pixels - actual height returned here }
- maxHeight: INTEGER; { maximum height in pixels }
- ramPercentage: Fixed; { maximum percentage of RAM to take }
- ramSlop: LongInt; { amount of RAM to be sure to leave }
- depth: INTEGER; { Depths in bits of each plane }
- vpMapping: gxMapping; { mapping to assign to offscreen viewPorts }
- vdMapping: gxMapping; { mapping to assign to offscreen viewDevices }
- planes: INTEGER; { # of planes to allocate of depth bits each (can be more than 4) }
- planeSetup: ARRAY [0..3] OF gxPlaneSetupRec; { parameters for each plane, 4 is provided because it is most handy for writers of devices }
- END;
-
-
- gxOffscreenPlaneRec = PACKED RECORD
- theViewPort: gxViewPort; { viewPort for the offscreen }
- theDevice: gxViewDevice; { viewDevice for the offscreen }
- theViewGroup: gxViewGroup; { the viewGroup that they share }
- theBitmap: gxShape; { the offscreen bitmap shape }
- theBits: gxBitmap; { the bits of the offscreen }
- END;
-
- gxOffscreenRec = PACKED RECORD
- numberOfPlanes: INTEGER; { number of planes we have }
- offscreenStorage: Handle; { handle containing the bitmaps image data }
- thePlanes: ARRAY [0..0] OF gxOffscreenPlaneRec; { planes to draw in }
- END;
- gxOffscreenPtr = ^gxOffscreenRec;
- gxOffscreenHdl = ^gxOffscreenPtr;
-
- gxRasterRenderOptions = LongInt;
- gxRasterPackageOptions = LongInt;
-
- gxRasterPrefsRec = PACKED RECORD
- renderOptions: gxRasterRenderOptions; { options for the raster imaging system }
- hImageRes: Fixed; { horizontal resolution to image at }
- vImageRes: Fixed; { vertical resolution to image at }
- minBandSize: INTEGER; { minimum band size to use (in pixels) }
- maxBandSize: INTEGER; { maximum band size to use (in pixels), 0 == entire page }
- ramPercentage: Fixed; { maximum percentage of RAM to take }
- ramSlop: LongInt; { amount of RAM to be sure to leave }
- depth: INTEGER; { depth in pixels (PER PLANE!) }
- numPlanes: INTEGER; { number of planes to render }
- planeSetup: ARRAY [0..0] OF gxPlaneSetupRec; { one for each plane }
- END;
- gxRasterPrefsPtr = ^gxRasterPrefsRec;
- gxRasterPrefsHdl = ^gxRasterPrefsPtr;
-
- gxRasterPackageRec = PACKED RECORD
- bufferSize: Ptr; { buffer size for packaging (>= maximum head pass size) }
- colorPasses: INTEGER; { 1 (b/w) or 4 (CMYK) is typical }
- headHeight: INTEGER; { printhead height in pixels }
- numberPasses: INTEGER; { number of head passes it takes to == iHeadHeight }
- passOffset: INTEGER; { offset between passes, in pixels }
- packageOptions: gxRasterPackageOptions; { packaging options }
- END;
- gxRasterPackagePtr = ^gxRasterPackageRec;
- gxRasterPackageHdl = ^gxRasterPackagePtr;
-
- gxBitmapPtr = ^gxBitmap;
- gxRasterPackageBitmapRec = PACKED RECORD
- bitmapToPackage: gxBitmapPtr; { bitmap containing the data to package }
- startRaster: INTEGER; { raster to begin the packaging from }
- colorBand: INTEGER; { for which color pass this is a packaging request }
- isBandDirty: Boolean; { whether there are any dirty bits in this band }
- dirtyRect: Rect; { which bits are dirty }
- END;
-
- gxStandardNumberRec = PACKED RECORD
- numberType: INTEGER; { type of numberic output desired }
- minWidth: INTEGER; { minimum output width of the number }
- padChar: Byte; { pad character for numbers shorter than the minWidth }
- alignment: Byte; { whee! }
- startString: Str31; { prefix string }
- endString: Str31; { postfix string }
- END;
- gxStandardNumberRec = ^gxStandardNumberPtr;
-
- gxRasterPackageControlsRec = PACKED RECORD
- startPageStringID: INTEGER; { 'wstr' to send to the device at start of page }
- formFeedStringID: INTEGER; { 'wstr' to send to the device to cause a form feed }
- forwardMax: INTEGER; { line feed strings }
- forwardLineFeed: gxStandardNumberRec;
- reverseMax: INTEGER;
- reverseLineFeed: gxStandardNumberRec;
- END;
- gxRasterPackageControlsPtr = ^gxRasterPackageControlsRec;
- gxRasterPackageControlsHdl = ^gxRasterPackageControlsPtr;
-
- gxRasterImageDataRec = PACKED RECORD
- { setup values }
-
- renderOptions: gxRasterRenderOptions; { options for the raster imaging system }
- hImageRes: Fixed; { horizontal resolution to image at }
- vImageRes: Fixed; { vertical resolution to image at }
- minBandSize: INTEGER; { smallest band that makes sense for this device }
- maxBandSize: INTEGER; { biggest band that makes sense, or 0 for "full page" }
- pageSize: gxRectangle; { size of page for device }
-
- { values used within the RasterDataIn message }
-
- currentYPos: INTEGER; { current position moving down the page }
- packagingInfo: gxRasterPackageRec; { raster packaging record }
-
- { values used within the remaining messages }
-
- optionsValid: Boolean; { were options specified by the driver? }
- packageControls: gxRasterPackageControlsRec; { options for the packaging messages }
-
- theSetup: gxOffscreenSetupRec; { setup for the offscreen code, variable length componant }
- END;
- gxRasterImageDataPtr = ^gxRasterImageDataRec;
- gxRasterImageDataHdl = ^gxRasterImageDataPtr;
-
-
- { Vector Driver Types }
-
- gxVectorRenderOptions = LongInt;
- gxVectorShapeOptions = LongInt;
-
- gxVHalftoneCompRec = PACKED RECORD
- angle: Fixed; { angle to halftone at. Must be 0, 90, 45 or 135 }
- penIndex: LongInt; { index of the pen to draw this component with }
- END;
-
- gxVHalftoneRec = PACKED RECORD
- halftoneSpace: gxColorSpace;
- halftoneComps: ARRAY [0..3] OF gxVHalftoneCompRec; { info for each color component }
- penIndexForBW: LongInt; { pen index to draw one bit deep or black and white bitmap with }
- END;
-
- gxVectorShapeDataRec = PACKED RECORD
- shapeOptions: gxVectorShapeOptions; { options to control shape handling }
- maxPolyPoints: LongInt; { maximum number of polygon points that device can support }
- shapeError: Fixed; { defines allowed deviation from the original shape }
- textSize: Fixed; { text above this size is filled; text below this size is outlined }
- frameSize: Fixed; { frame's smaller than this -> shape stroked; frame's larger -> shape is filled }
- END;
-
- gxVectorImageDataRec = PACKED RECORD
- renderOptions: gxVectorRenderOptions; { options to control rendering: color sort, clipping, etc. }
- devRes: Fixed; { device resolution }
- devTransform: gxTransform; { mapping, clip and halftoning information for colored bitmaps }
- clrSet: gxColorSet; { entire set of colors; usually indexed color space for pen plotters }
- bgColor: gxColor; { the background color in the color space specified by the clrSpace field }
- halftoneInfo: gxVHalftoneRec; { defines halftone information for color bitmaps }
- hPenTable: gxPenTableHdl; { complete list of pens along with their pen positions and thickness }
- pageRect: gxRectangle; { page dimensions }
- shapeData: gxVectorShapeDataRec; { information on how to render a shape }
- END;
- gxVectorImageDataPtr = ^gxVectorImageDataRec;
- gxVectorImageDataHdl = ^gxVectorImageDataPtr;
-
-
- { PostScript Driver Types }
-
- gxVectorImageDataRec = PACKED RECORD
- theFont: gxFont; { ---> font reference. }
- nGlyphs: LongInt; { ---> Number of glyphs in the font. }
-
- platform: gxFontPlatform; { <--- How printer font is encoded. }
- script: gxFontScript; { <--- Script if platform != glyphPlatform }
- language: gxFontLanguage; { <--- Language if platform != glyphPlatform. }
-
- vmUsage: LongInt; { <--- how much PostScript VM font uses. }
-
- { size of this is longAlligned(nGlyphs) }
- glyphBits: ARRAY [0..0] OF LongInt; { <--- Bit array of which system glyphs are in printer. }
- END;
-
- gxPostScriptImageDataRec = PACKED RECORD
- languageLevel: INTEGER; { PostScript language level }
- devCSpace: gxColorSpace; { the printer's color space }
- devCProfile: gxColorProfile; { The printer's color profile for matching }
- renderOptions: gxPostScriptRenderOptions; { options for the imaging system }
- pathLimit: LongInt; { maximum path size }
- gsaveLimit: INTEGER; { maximum number of gsaves allowed }
- opStackLimit: INTEGER; { operand stack limit }
- fontType: scalerStreamTypeFlag; { these are the font types that the printer supports }
- printerVM: LongInt; { how much memory is in the printer }
- reserved0: LongInt;
- END;
- gxPostScriptImageDataPtr = ^gxPostScriptImageDataRec;
- gxPostScriptImageDataHdl = ^gxPostScriptImageDataPtr;
-
- gxProcSetListRec = PACKED RECORD
- clientid: Signature;
- controlType: OSType; { the driver will call FetchTaggedData on each of these resources }
- controlid: INTEGER;
- dataType: OSType;
- reserved0: LongInt;
- END;
- gxProcSetListPtr = ^gxProcSetListRec;
- gxProcSetListHdl = ^gxProcSetListPtr;
-
- {********************************************************************}
- {************************ Compatibility Messages ********************}
- {********************************************************************}
- FUNCTION Forward_GXPrOpenDoc (printRecord: THPrint; VAR port: TPPrPort): OSErr;
- C;
-
- FUNCTION Forward_GXPrCloseDoc (port: TPPrPort): OSErr;
- C;
-
- FUNCTION Forward_GXPrOpenPage (port: TPPrPort; pageRect: TPRect: resolution: Point): OSErr;
- C;
-
- FUNCTION Forward_GXPrClosePage (port: TPPrPort): OSErr;
- C;
-
- FUNCTION Forward_GXPrintDefault (printRecord: THPrint): OSErr;
- C;
-
- FUNCTION Forward_GXPrStlDialog (printRecord: THPrint; VAR didConfirm: Boolean): OSErr;
- C;
-
- FUNCTION Forward_GXPrJobDialog (printRecord: THPrint; VAR didConfirm: Boolean): OSErr;
- C;
-
- FUNCTION Forward_GXPrStlInit (printRecord: THPrint; VAR dialogSetup: TPPrDlg): OSErr;
- C;
-
- FUNCTION Forward_GXPrJobInit (printRecord: THPrint; VAR dialogSetup: TPPrDlg): OSErr;
- C;
-
- FUNCTION Forward_GXPrDlgMain (printRecord: THPrint; theProc: PDlgInitProcPtr; VAR didConfirm: Boolean): OSErr;
- C;
-
- FUNCTION Forward_GXPrValidate (printRecord: THPrint; VAR didValidate: Boolean): OSErr;
- C;
-
- FUNCTION Forward_GXPrJobMerge (printRecord: THPrint; printRecord: THPrint): OSErr;
- C;
-
- FUNCTION Forward_GXPrGeneral (aPtr: Ptr): OSErr;
- C;
-
- FUNCTION Forward_GXConvertPrintRecordTo (printRecord: THPrint): OSErr;
- C;
-
- FUNCTION Forward_GXConvertPrintRecordFrom (printRecord: THPrint): OSErr;
- C;
-
- FUNCTION Forward_GXPrintRecordToJob (printRecord: THPrint; theJob: gxJob): OSErr;
- C;
-
-
- {********************************************************************}
- {************************ Raster Messages ***************************}
- {********************************************************************}
-
- FUNCTION Send_GXRasterDataIn (theOffscreen: gxOffscreenHdl; VAR bandRectangle: gxRectangle; VAR dirtyRectangle: gxRectangle): OSErr;
- C;
- FUNCTION Forward_GXRasterDataIn (theOffscreen: gxOffscreenHdl; VAR bandRectangle: gxRectangle; VAR dirtyRectangle: gxRectangle): OSErr;
- C;
-
- FUNCTION Send_GXRasterLineFeed (VAR lineFeedSize: INTEGER; buffer: Ptr; VAR bufferPos: LongInt; theImageData: gxRasterImageDataHdl): OSErr;
- C;
- FUNCTION Forward_GXRasterLineFeed (VAR lineFeedSize: INTEGER; buffer: Ptr; VAR bufferPos: LongInt; theImageData: gxRasterImageDataHdl): OSErr;
- C;
-
- FUNCTION Send_GXRasterPackageBitmap (VAR whatToPackage: gxRasterPackageBitmapRec; buffer: Ptr;
- VAR bufferPos: LongInt; theImageData: gxRasterImageDataHdl): OSErr;
- C;
- FUNCTION Forward_GXRasterPackageBitmap (VAR whatToPackage: gxRasterPackageBitmapRec; buffer: Ptr;
- VAR bufferPos: LongInt; theImageData: gxRasterImageDataHdl): OSErr;
- C;
-
-
- {********************************************************************}
- {************************ Vector Messages ***************************}
- {********************************************************************}
-
- FUNCTION Send_GXVectorPackageShape (theShape: gxShape; penIndex:LongInt): OSErr;
- C;
- FUNCTION Forward_GXVectorPackageShape (theShape: gxShape; penIndex:LongInt): OSErr;
- C;
-
- FUNCTION Send_GXVectorLoadPens (thePenTable: gxPenTableHdl; VAR shapeCounts: LongInt; VAR penTableChanged: Boolean): OSErr;
- C;
- FUNCTION Forward_GXVectorLoadPens (thePenTable: gxPenTableHdl; VAR shapeCounts: LongInt; VAR penTableChanged: Boolean): OSErr;
- C;
-
- FUNCTION Send_GXVectorVectorizeShape (theShape: gxShape; penIndex:LongInt; VAR theData: gxVectorShapeDataRec): OSErr;
- C;
- FUNCTION Forward_GXVectorVectorizeShape (theShape: gxShape; penIndex:LongInt; VAR theData: gxVectorShapeDataRec): OSErr;
- C;
-
-
-
- {********************************************************************}
- {************************ PostScript Messages ***********************}
- {********************************************************************}
-
-
- { device control messages }
-
- FUNCTION Send_GXPostScriptQueryPrinter (VAR result: LongInt): OSErr;
- C;
- FUNCTION Forward_GXPostScriptQueryPrinter (VAR): OSErr;
- C;
-
- FUNCTION Send_GXPostScriptInitializePrinter : OSErr;
- C;
- FUNCTION Forward_GXPostScriptInitializePrinter : OSErr;
- C;
-
- FUNCTION Send_GXPostScriptResetPrinter : OSErr;
- C;
- FUNCTION Forward_GXPostScriptResetPrinter : OSErr;
- C;
-
- FUNCTION Send_GXPostScriptExitServer : OSErr;
- C;
- FUNCTION Forward_GXPostScriptExitServer : OSErr;
- C;
-
-
- { device communication messages }
-
-
- FUNCTION Send_GXPostScriptGetStatusText (statusText: Handle): OSErr;
- C;
- FUNCTION Forward_GXPostScriptGetStatusText (statusText: Handle): OSErr;
- C;
-
- FUNCTION Send_GXPostScriptGetPrinterText (printerText: Handle): OSErr;
- C;
- FUNCTION Forward_GXPostScriptGetPrinterText (printerText: Handle): OSErr;
- C;
-
- FUNCTION Send_GXPostScriptScanStatusText (statusText: Handle): OSErr;
- C;
- FUNCTION Forward_GXPostScriptScanStatusText (statusText: Handle): OSErr;
- C;
-
- FUNCTION Send_GXPostScriptScanPrinterText (printerText: Handle): OSErr;
- C;
- FUNCTION Forward_GXPostScriptScanPrinterText (printerText: Handle): OSErr;
- C;
-
-
- { proc set management messages }
-
-
- FUNCTION Send_GXPostScriptGetDocumentProcSetList (theProcSets: gxProcSetListHdl; theImageData: gxPostScriptImageDataHdl): OSErr;
- C;
- FUNCTION Forward_GXPostScriptGetDocumentProcSetList (theProcSets: gxProcSetListHdl; theImageData: gxPostScriptImageDataHdl): OSErr;
- C;
-
- FUNCTION Send_GXPostScriptDownloadProcSetList (theProcSets: gxProcSetListHdl; theImageData: gxPostScriptImageDataHdl): OSErr;
- C;
- FUNCTION Forward_GXPostScriptDownloadProcSetList (theProcSets: gxProcSetListHdl; theImageData: gxPostScriptImageDataHdl): OSErr;
- C;
-
-
- { font management messages }
-
-
- FUNCTION Send_GXPostScriptGetPrinterGlyphsInformation (VAR theGlyphs: gxPrinterGlyphsRec): OSErr;
- C;
- FUNCTION Forward_GXPostScriptGetPrinterGlyphsInformation (VAR theGlyphs: gxPrinterGlyphsRec): OSErr;
- C;
-
- FUNCTION Send_GXPostScriptStreamFont (fontref: gxFont; VAR streamPtr: scalerStream): OSErr;
- C;
- FUNCTION Forward_GXPostScriptPostScriptStreamFont (fontref: gxFont; VAR streamPtr: scalerStream): OSErr;
- C;
-
-
- { document structuring and formatting messages }
-
-
- FUNCTION Send_GXPostScriptDoDocumentHeader (theImageData: gxPostScriptImageDataHdl): OSErr;
- C;
- FUNCTION Forward_GXPostScriptDoDocumentHeader (theImageData: gxPostScriptImageDataHdl): OSErr;
- C;
-
- FUNCTION Send_GXPostScriptDoDocumentSetup (theImageData: gxPostScriptImageDataHdl): OSErr;
- C;
- FUNCTION Forward_GXPostScriptDoDocumentSetup (theImageData: gxPostScriptImageDataHdl): OSErr;
- C;
-
- FUNCTION Send_GXPostScriptDoDocumentTrailer (theImageData: gxPostScriptImageDataHdl): OSErr;
- C;
- FUNCTION Forward_GXPostScriptDoDocumentTrailer (theImageData: gxPostScriptImageDataHdl): OSErr;
- C;
-
-
- { page structuring and formatting messages }
-
-
- FUNCTION Send_GXPostScriptDoPageSetup (theFormat: gxFormat; which: LongInt; theImageData: gxPostScriptImageDataHdl): OSErr;
- C;
- FUNCTION Forward_GXPostScriptDoPageSetup (theFormat: gxFormat; which: LongInt; theImageData: gxPostScriptImageDataHdl): OSErr;
- C;
-
- FUNCTION Send_GXPostScriptSelectPaperType (thePaperType: gxPaperType; which: LongInt; theImageData: gxPostScriptImageDataHdl): OSErr;
- C;
- FUNCTION Forward_GXPostScriptSelectPaperType (thePaperType: gxPaperType; which: LongInt; theImageData: gxPostScriptImageDataHdl): OSErr;
- C;
-
- FUNCTION Send_GXPostScriptDoPageTrailer (theImageData: gxPostScriptImageDataHdl): OSErr;
- C;
- FUNCTION Forward_GXPostScriptDoPageTrailer (theImageData: gxPostScriptImageDataHdl): OSErr;
- C;
-
- FUNCTION Send_GXPostScriptEjectPage (thePaperType: gxPaperType; pagenumber: LongInt; copiescount: LongInt; erasepage: INTEGER; theImageData: gxPostScriptImageDataHdl): OSErr;
- C;
- FUNCTION Forward_GXPostScriptEjectPage (thePaperType: gxPaperType; pagenumber: LongInt; copiescount: LongInt; erasepage: INTEGER; theImageData: gxPostScriptImageDataHdl): OSErr;
- C;
-
-
- { shape imaging messages }
-
- gxTranformPtr = ^gxTransform;
- FUNCTION Send_GXPostScriptProcessShape (page: gxShape; trcount: LongInt; trlist: gxTranformPtr): OSErr;
- C;
- FUNCTION Forward_GXPostScriptProcessShape (page: gxShape; trcount: LongInt; trlist: gxTranformPtr): OSErr;
- C;
-
-
-
- {********************************************************************}
- {************************ Driver Interfaces *************************}
- {********************************************************************}
-
- FUNCTION GXAddPrinterViewDevice (thePrinter: gxPrinter; theViewDevice: gxViewDevice): OSErr;
- C;
-
- FUNCTION GXGetAvailableJobFormatModes (VAR theTable: gxJobFormatModeTableHdl): OSErr;
- C;
-
- FUNCTION GXSetPreferredJobFormatMode (theMode: gxJobFormatMode; directOnly: Boolean): OSErr;
- C;
-
- FUNCTION GXPrintingAlert(
- iconID: INTEGER;
- txtSize: INTEGER;
- defaultTitleNum: INTEGER;
- cancelTitleNum: INTEGER;
- textLen: INTEGER;
- pAlertMsg: Ptr;
- actionTitle: StringPtr;
- title2: StringPtr;
- title3: StringPtr;
- msgFont: StringPtr;
- filterProc: ModalFilterProcPtr;
- VAR itemHit: INTEGER;
- alertTitle: StringPtr): OSErr;
- C;
-
- FUNCTION GXGetPrintingAlert(
- alertResId: INTEGER;
- filterProc: ModalFilterProcPtr;
- VAR itemHit: INTEGER): OSErr;
- C;
-
- FUNCTION GXFetchDTPData (dtpName: Str31; theType: OSType; theID:INTEGER; VAR theData: Handle): OSErr;
- C;
-
- FUNCTION GXWriteDTPData (dtpName: Str31; theType: OSType; theID:INTEGER; theData: Handle): OSErr;
- C;
-
- FUNCTION GXHandleChooserMessage (VAR aJob: gxJob; driverName:Str31; message: INTEGER; caller: INTEGER;
- objName: StringPtr; zoneName: StringPtr; theList: ListHandle; p2: LongInt): OSErr;
- C;
-
- {$ENDC} { UsingPrintingDrivers }
-
- {$IFC NOT UsingIncludes}
- END.
- {$ENDC}
-